Techniques for audio synchronization

ABSTRACT

Techniques for audio synchronization are described. In one embodiment, for example, an apparatus may comprise a processor circuit and an audio synchronization module, and the audio synchronization module may be operable by the processor circuit to receive audio information comprising a first network time index defined with respect to a network clock for a network, determine a second network time index for the audio information, the second network time index defined with respect to the network clock, determine a transmission delay value for the audio information based on a difference between the first network time index and the second network time index, and determine a total delay value for the audio information based on the transmission delay value and on a remote processing delay value for the audio information. Other embodiments are described and claimed.

BACKGROUND

In the field of audio acquisition and processing, it may be desirable todefine a common temporal frame of reference for audio informationexchanged by multiple devices. For example, it may be desirable todefine a common temporal frame of reference in order to enable thesynchronization of playback of audio information on speakers residing atmultiple devices, or to enable a central device to combine audioinformation received from multiple remote devices in a time-synchronousfashion. In an arrangement in which multiple such devices are connectedto a same network, a network clock for that network may provide amutually understood temporal context for the multiple devices. As such,techniques for defining a common temporal frame of reference for audioinformation exchanged by multiple devices based on a network clock of acommon network may be desirable.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates one embodiment of a first operating environment.

FIG. 2 illustrates one embodiment of a second operating environment.

FIG. 3 illustrates one embodiment of a first apparatus and oneembodiment of a first system.

FIG. 4 illustrates one embodiment of a second apparatus and oneembodiment of a second system.

FIG. 5 illustrates one embodiment of a first logic flow.

FIG. 6 illustrates one embodiment of a first logic flow.

FIG. 7 illustrates one embodiment of a third system.

FIG. 8 illustrates one embodiment of a fourth system.

FIG. 9 illustrates one embodiment of a device.

DETAILED DESCRIPTION

Various embodiments may be generally directed to techniques for audiosynchronization. In one embodiment, for example, an apparatus maycomprise a processor circuit and an audio synchronization module, andthe audio synchronization module may be operable by the processorcircuit to receive audio information comprising a first network timeindex defined with respect to a network clock for a network, determine asecond network time index for the audio information, the second networktime index defined with respect to the network clock, determine atransmission delay value for the audio information based on a differencebetween the first network time index and the second network time index,and determine a total delay value for the audio information based on thetransmission delay value and on a remote processing delay value for theaudio information. Other embodiments may be described and claimed.

Various embodiments may comprise one or more elements. An element maycomprise any structure arranged to perform certain operations. Eachelement may be implemented as hardware, software, or any combinationthereof, as desired for a given set of design parameters or performanceconstraints. Although an embodiment may be described with a limitednumber of elements in a certain topology by way of example, theembodiment may include more or less elements in alternate topologies asdesired for a given implementation. It is worthy to note that anyreference to “one embodiment” or “an embodiment” means that a particularfeature, structure, or characteristic described in connection with theembodiment is included in at least one embodiment. The appearances ofthe phrases “in one embodiment,” “in some embodiments,” and “in variousembodiments” in various places in the specification are not necessarilyall referring to the same embodiment.

FIG. 1 illustrates an example of an operating environment 100 accordingto various embodiments. As shown in FIG. 1, a central device 102communicates with one or more remote devices 104-n over a network 106.It is worthy of note that “n” and similar designators as used herein areintended to be variables representing any positive integer. Thus, forexample, if an implementation sets a value for n=4, then a complete setof remote devices 104-n may include remote devices 104-1, 104-2, 104-3,and 104-4. The embodiments are not limited in this context.

In some embodiments, each remote device 104-n may be operative togenerate respective audio information 108-n. In various embodiments, oneor more of the remote devices 104-n may comprise or be communicativelycoupled to respective microphones 110-n, and may be operative to captureaudio information 108-n using those microphones 110-n. In someembodiments, each remote device 104-n may be operative to generate itsrespective audio information 108-n by recording audio effects associatedwith a same real-world event, series of events, or process. For example,in various embodiments, each remote device 104-n may comprise a devicein a conference room, and may capture speech of participants in aconference in that conference room. The embodiments are not limited tothis example.

In some embodiments, remote devices 104-n may be operative to transmitaudio information 108-n to central device 102 over network 106. Invarious embodiments, network 106 may comprise a wireless network, awired network, or a combination of both. In some such embodiments, audioinformation 108-n for one or more of the remote devices 104-n maycomprise and/or be transmitted over network 106 as an audio stream. Theembodiments are not limited in this context.

In various embodiments, it may be desirable for central device 102 todefine an inter-device temporal frame of reference for the audioinformation 108-n generated by remote devices 104-n, such that anyparticular time expressed according to the inter-device temporal frameof reference will be universally understood by central device 102 andremote devices 104-n to refer to a same real-world time. In someembodiments, such an inter-device temporal frame of reference may beused to synchronize playback of particular audio information 108-n atmultiple devices, to combine audio information received from multipleremote devices 104-n in a time-synchronous fashion, and/or to performother operations on audio information 108-n. The embodiments are notlimited in this context.

In various embodiments, for example, it may be desirable for centraldevice 102 to use an inter-device temporal frame of reference to combineaudio information 108-n received from multiple remote devices 104-n toobtain composite audio information 122. In some embodiments, combiningaudio information from multiple sources may allow the generation ofcomposite audio information 122 having enhanced, improved, and/ordesired characteristics relative to the audio information generated byany of the multiple sources individually. For example, if a remotedevice 104-1 is situated at a significant distance from a speaker in aconference, it may generate audio information 108-1 that poorly captureshis speech, while a remote device 104-2 situated near the speaker maygenerate audio information 104-2 that captures his speech well. In suchan example, the audio information 108-1 might be improved by combiningit with the audio information 108-2 to obtain composite audioinformation 122, in which the speaker's speech is well captured. Theembodiments are not limited to this example.

In various embodiments, combining audio information generated bymultiple sources to obtain composite audio information 122 may comprise,for each portion of audio information 108-n generated by a particularremote device 104-n among the multiple sources, combining that portionwith corresponding portions of audio information generated by the othersources. With respect to the combination of audio information 108-nreceived from multiple remote devices 104-n, portions of audioinformation 108-n may be said to correspond to each other when they arecaptured at a same time, and thus correspond to a same audio effectwithin a real-world event, series of events, or process. For example, aremote device 104-1 may use its microphone 110-1 to generate audioinformation 108-1 by recording a conference, and a person participatingin the conference may cough. A portion of the audio information 108-1corresponding to the cough may be said to correspond to a portion ofaudio information 108-2 captured at the same time—and thus alsocomprising the cough—by a remote device 104-2 that is also recording theconference. The embodiments are not limited to this example.

In conventional systems, a central device such as central device 102 ofFIG. 1 may lack the ability to determine which portions of various audioinformation 108-n correspond to each other, and may thus be unable tocombine the audio information 108-n in such a fashion that compositeaudio information 122 is obtained that exhibits enhanced, improved,and/or desired characteristics. For example, in a conventional system, acentral device 102 receiving audio information 108-1 and audioinformation 108-2 from respective remote devices 104-1 and 104-2 may beunable to determine that a portion of the audio information 108-1comprising a cough was captured at a same time as a portion of the audioinformation 108-2 comprising the cough. As such, composite audioinformation 122 generated by the central device 102 in the conventionalsystem may exhibit degraded and/or undesired characteristics. Continuingwith the above example, a cough which occurred only once in real lifemay occur twice in the composite audio information 122 generated bycombining the audio information 108-1 and audio information 108-2 in theconventional system. As such, techniques for defining an inter-devicetemporal frame of reference to enable the synchronization of audioinformation received from and/or generated by multiple sources may bedesirable.

In some embodiments, it may desirable for central device 102 to definean inter-device temporal frame of reference in order to enable thesynchronization of playback of particular audio information 108-n byspeakers residing at multiple remote devices 104-n. Synchronizing theplayback of particular audio information 108-n by speakers residing atmultiple remote devices 104-n may comprise ensuring that the audioinformation 108-n is played back simultaneously by each of the multiplespeakers. However, in various embodiments, the particular audioinformation 108-n may not be transmitted to—and/or received by—themultiple remote devices 104-n simultaneously. In conventional systems,multiple remote devices 104-n receiving the same audio information atdifferent times may be unable to determine when to play back that audioinformation on their speakers such that the playback is synchronizedwith that of the speakers residing at the other remote devices 104-n. Assuch, techniques for defining an inter-device temporal frame ofreference to enable the synchronization of audio playback at multipleremote devices may be desirable.

FIG. 2 illustrates an example of an operating environment in which aninter-device temporal frame of reference may be defined for audioinformation 208-n and/or audio information 212. As shown in FIG. 2, eachremote device 204-n may be operative to generate time indices 218-n-pfor its respective audio information 208-n. For particular audioinformation 208-n, such time indices 218-n-p may indicate, for anyparticular portion of that audio information 208-n, a time at which thatparticular portion reached a defined point in an audio capture,processing, and/or transmission process. That time may be definedaccording to the inter-device temporal frame of reference, which may becommon to and mutually understood and utilized by remote devices 204-nand the central device 202. For example, time indices 218-n-p mayindicate, for any particular portion of audio information 208-n, atime—according to the inter-device temporal frame of reference—that thatportion of audio information 208-n became ready for transmission fromits corresponding remote device 204-n to central device 202. Theembodiments are not limited to this example.

In various embodiments, remote devices 204-n and central device 202 mayeach be connected to a network 230, and an inter-device temporal frameof reference may be defined according to network time indices 232-q forthe network 230. In some embodiments, the network time indices 232-q fornetwork 230 may comprise clock signals for network 230. In variousembodiments, network 230 may comprise a Bluetooth® network, and networktime indices 232-q may comprise Bluetooth® network clock signals. Insome embodiments, remote devices 204-n may be operative to periodicallyreceive network time indices 232-q for network 230, and may define timeindices 218-n-p based on the network time indices 232-q for network 230.The embodiments are not limited in this context.

In some embodiments, a granularity of the clock signal for network 230may be large enough that if an inter-device temporal frame of referenceis defined such that each of time indices 218-n-p is exactly equal to arespective network time index 232-q, the quality of synchronizationperformed according to the inter-device temporal frame of reference maybe lower than a desired level. For example, in various embodiments,network 230 may comprise a Bluetooth network with a 312.5 μs networkclock, and synchronization performed according to an inter-devicetemporal frame of reference featuring such a level of granularity mayyield sub-optimal results. In some embodiments, in order to reduce thegranularity of the inter-device temporal frame of reference, timeindices 218-n-p may be expressed as relative offsets of network timeindices 232-q. In some embodiments, such relative offsets may comprisenumbers of periods of a symbol clock for the network 230. In an exampleembodiment in which network 230 comprises a Bluetooth network, timeindices 218-n-p may be expressed as relative offsets of the Bluetoothnetwork clock, and the relative offsets may comprise numbers of periodsof the Bluetooth symbol clock. For example, the Bluetooth network maycomprise a network clock with a 312.5 μs period and a symbol clock witha 1 μs period, and each relative offset may comprise a number indicatinga multiple of the 1 μs period of the symbol clock. As such, thegranularity of the inter-device temporal frame of reference in such anexample embodiment may be reduced from 312.5 μs to 1 μs. The embodimentsare not limited to this example.

In various embodiments, central device 202 may also be operative toperiodically receive the network time indices 232-q for network 230 thatare received by remote devices 204-n, and thus may understand theinter-device temporal frame of reference utilized by remote devices204-n based on those network time indices 232-q. For example, in someembodiments in which network 230 comprises a Bluetooth network andnetwork time indices 232-q comprise Bluetooth network clock signals,central device 202 and remote devices 204-n may be operative toperiodically receive the same Bluetooth network clock signals, remotedevices 204-n may be operative to generate time indices 218-n-p based onthe Bluetooth network clock signals, and central device 202 may beoperative to interpret the time indices 218-n-p based on the networkclock signals. The embodiments are not limited to this example.

In various embodiments, central device 202 may be operative to receiveaudio information 208-n and/or time indices 218-n-p from one or moreremote devices 204-n over a network 206. In some embodiments, network206 may comprise a wireless network, a wired network, or a combinationof both. In various embodiments, network 206 may comprise a differentnetwork than network 230. As such, in some embodiments, an inter-devicetemporal frame of reference may be defined for central device 202 andone or more remote devices 204-n based on network time indices for onenetwork, but the remote devices 204-n may transmit audio informationand/or time indices to central device 202 over a second, differentnetwork. In fact, in various embodiments, central device 202 and remotedevices 204-n may not communicate with each other over network 230 atall, but rather may merely use network 230 to define the inter-devicetemporal frame of reference, and may communicate with each other overnetwork 206. In other embodiments, central device 202 and remote devices204-n may communicate with each other over both network 206 and network230. In yet other embodiments, operating environment 200 may notcomprise a network 206, and central device 202 and remote devices 204-nmay both define the inter-device temporal frame of reference based onnetwork 230 and communicate over network 230. For example, in someembodiments in which network 230 comprises a Bluetooth network, centraldevice 202 and remote devices 204-n may be operative to define theinter-device temporal frame of reference based on the Bluetooth networkclock and also to communicate with each other over the Bluetoothnetwork, while in various other embodiments, central device 202 andremote devices 204-n may be operative to define the inter-devicetemporal frame of reference based on the Bluetooth network clock but tocommunicate with each other over a different network 206. Theembodiments are not limited in this context.

In some embodiments, after receipt of any particular audio information208-n, central device 202 may be operative to generate time indices219-n-p for that audio information. Such time indices 219-n-p mayindicate, for any particular portion of that audio information 208-n, atime—according to the inter-device temporal frame of reference—at whichthat particular portion reached a second defined point in the audiocapture, processing, and/or transmission process. For example, timeindices 219-n-p may indicate, for any particular portion of audioinformation 208-n, a time—according to the inter-device temporal frameof reference—that that portion of audio information 208-n was receivedfrom its corresponding remote device 204-n over network 230. As such, invarious embodiments, central device 202 may be operative to receive timeindices 218-n-p indicating a time that a portion of audio information208-n reached a first defined point in an audio capture, processing,and/or transmission process, and may be operative to generate timeindices 219-n-p indicating a time that the portion of audio information208-n reached a second defined point in the audio capture, processing,and/or transmission process. The embodiments are not limited in thiscontext.

In various embodiments, central device 202 may be operative to determinea transmission delay value for the audio information 208-n based on thereceived time indices 218-n-p and on the generated time indices 219-n-r.In an example embodiment, a time index 218-n-p may indicate atime—according to the inter-device temporal frame of reference—that aparticular portion of audio information 208-n became ready fortransmission at a remote device 204-n and a time index 219-n-r mayindicate a time—according to the inter-device temporal frame ofreference—that the particular portion of audio information 208-n wasreceived at central device 202, and central device 202 may be operativeto determine a transmission delay value for the particular portion ofaudio information 208-n by subtracting the time index 218-n-p from thetime index 219-n-r. In various embodiments, central device 202 may beoperative to determine a total delay value for the audio information208-n based on the transmission delay value and on a remote processingdelay value for the audio information 208-n. In some embodiments, theremote processing delay value may indicate a duration of processing ofthe audio information 208-n prior to the generation of time index218-n-p at its respective remote device 204-n. The embodiments are notlimited in this context.

In some embodiments, central device 202 may be operative to define alocal temporal frame of reference, which may comprise a temporal frameof reference internal to and understood within central device 202. Invarious embodiments, central device 202 may define the local temporalframe of reference based on a local clock 220. Local clock 220 maycomprise a clock, oscillator, or other timing device internal to centraldevice 202 that drives operations of one or more elements within centraldevice 202. In some embodiments, for example, local clock 220 maycomprise a clock for a processor circuit within central device 202. Theembodiments are not limited in this context.

In various embodiments, central device 202 may be operative to determinecoordinated time indices 221-n-s for received audio information 208-n.In some embodiments, coordinated time indices 221-n-s may be definedaccording to the local temporal frame of reference. In various suchembodiments, coordinated time indices 221-n-s may comprise local timesdefined according to the local clock 220. In some embodiments, for anyparticular portion of audio information 208-n, a coordinated time index221-n-s may indicate a time—according to the local temporal frame ofreference—that that portion of audio information 208-n was captured. Invarious embodiments, for any particular audio information 208-n, centraldevice 202 may be operative to generate coordinated time indices 221-n-sbased on the total delay value for the audio information 208-n and onthe local clock 220. The embodiments are not limited in this context.

In some embodiments, central device 202 may be operative to receiveaudio information 208-n from multiple remote devices 204-n, and may beoperative to generate composite audio information 222 by combining thereceived audio information 208-n. In various embodiments, central device202 may be operative to generate coordinated time indices 221-n-s forthe audio information 208-n, and may be operative to combine thereceived audio information 208-n based on the coordinated time indices221-n-s for that audio information 208-n. In some embodiments, centraldevice 202 may be operative to utilize coordinated time indices 221-n-sto determine portions of audio information 208-n that were capturedsubstantially simultaneously by different remote devices 204-n, and thusmay be able to generate composite audio information 222 in which thoseportions of audio information 208-n are temporally aligned. Suchcomposite audio information 222 may exhibit enhanced, improved, and/ordesired characteristics relative to the audio information 208-ngenerated by any of the multiple remote devices 204-n individually. Theembodiments are not limited in this context.

In various embodiments, central device 202 may be operative to generateits own audio information 212 corresponding to the same real-worldevent, series of events, or process as audio information 208-n. Forexample, in an embodiment in which each remote device 204-n comprises adevice in a conference room and captures speech of participants in aconference in that conference room, central device 202 may be operativeto generate audio information 212 by capturing speech of participants inthat conference. In some embodiments, central device 102 may comprise orbe communicatively coupled to a microphone 214, and may be operative tocapture audio information 212 using that microphone 214. The embodimentsare not limited in this context.

In various embodiments, central device 202 may be operative to determinecoordinated time indices 213-t for audio information 212. In someembodiments, coordinated time indices 213-t may be defined according tothe same local temporal frame of reference as coordinated time indices221-n-s. In various such embodiments, coordinated time indices 213-t maycomprise local times defined according to the local clock 220. In someembodiments, for any particular portion of audio information 212, acoordinated time index 213-t may indicate a time—according to the localtemporal frame of reference—that that portion of audio information 212was captured. In various embodiments, central device 202 may beoperative to generate coordinated time indices 213-t directly, based onlocal clock 220, without generating time indices for audio information212 that are based on the inter-device temporal frame of reference. Insome embodiments, central device 202 may be operative to generate timeindices for audio information 212 based on the inter-device temporalframe of reference, and may then be operative to generate coordinatedtime indices 213-t for audio information 212 based on those time indicesand on a processing delay value for the audio information 212. Theembodiments are not limited in this context.

In various embodiments in which it generates audio information 212,central device 202 may be operative to receive audio information 208-nfrom one or more remote devices 204-n, and may be operative to generatecomposite audio information 222 by combining the received audioinformation 208-n with the generated audio information 212. In someembodiments, central device 202 may be operative to combine the receivedaudio information 208-n with the generated audio information 212 basedon the coordinated time indices 221-n-s for the received audioinformation 208-n and the coordinated time indices 213-t for thegenerated audio information 212. The embodiments are not limited in thiscontext.

FIG. 3 illustrates an apparatus 300 such as may comprise an example of aremote device 204-n of FIG. 2 according to various embodiments. As shownin FIG. 3, apparatus 300 comprises multiple elements including aprocessor circuit 302, a memory unit 304, an audio management module306, an audio indexing module 310, a transceiver 314, a networkcontroller 316, and a network controller 320. The embodiments, however,are not limited to the type, number, or arrangement of elements shown inthis figure.

In various embodiments, apparatus 300 may comprise processor circuit302. Processor circuit 302 may be implemented using any processor orlogic device, such as a complex instruction set computer (CISC)microprocessor, a reduced instruction set computing (RISC)microprocessor, a very long instruction word (VLIW) microprocessor, anx86 instruction set compatible processor, a processor implementing acombination of instruction sets, a multi-core processor such as adual-core processor or dual-core mobile processor, or any othermicroprocessor or central processing unit (CPU). Processor circuit 302may also be implemented as a dedicated processor, such as a controller,a microcontroller, an embedded processor, a chip multiprocessor (CMP), aco-processor, a digital signal processor (DSP), a network processor, amedia processor, an input/output (I/O) processor, a media access control(MAC) processor, a radio baseband processor, an application specificintegrated circuit (ASIC), a field programmable gate array (FPGA), aprogrammable logic device (PLD), and so forth. In one embodiment, forexample, processor circuit 302 may be implemented as a general purposeprocessor, such as a processor made by Intel® Corporation, Santa Clara,Calif. The embodiments are not limited in this context.

In some embodiments, apparatus 300 may comprise or be arranged tocommunicatively couple with a memory unit 304. Memory unit 304 may beimplemented using any machine-readable or computer-readable mediacapable of storing data, including both volatile and non-volatilememory. For example, memory unit 304 may include read-only memory (ROM),random-access memory (RAM), dynamic RAM (DRAM), Double-Data-Rate DRAM(DDRAM), synchronous DRAM (SDRAM), static RAM (SRAM), programmable ROM(PROM), erasable programmable ROM (EPROM), electrically erasableprogrammable ROM (EEPROM), flash memory, polymer memory such asferroelectric polymer memory, ovonic memory, phase change orferroelectric memory, silicon-oxide-nitride-oxide-silicon (SONOS)memory, magnetic or optical cards, or any other type of media suitablefor storing information. It is worthy of note that some portion or allof memory unit 304 may be included on the same integrated circuit asprocessor circuit 302, or alternatively some portion or all of memoryunit 304 may be disposed on an integrated circuit or other medium, forexample a hard disk drive, that is external to the integrated circuit ofprocessor circuit 302. Although memory unit 304 is comprised withinapparatus 300 in FIG. 3, memory unit 304 may be external to apparatus300 in some embodiments. The embodiments are not limited in thiscontext.

In some embodiments, apparatus 300 may comprise an audio managementmodule 306. Audio management module 306 may comprise an audio subsystemfor apparatus 300 in various embodiments. In some embodiments, audiomanagement module may comprise logic, circuitry, or instructionsoperative to generate audio information 308. Audio information 308 maycomprise information, data, logic, and/or instructions representingtones, music, speech, speech utterances, sound effects, backgroundnoise, or other sounds. The embodiments are not limited in this context.

In various embodiments, apparatus 300 may comprise an audio indexingmodule 310. In some embodiments, audio indexing module 310 may compriselogic, circuitry, or instructions operative to generate time indices 312for audio information 308. In various embodiments, audio indexing module310 may be operative to generate indexed audio information 313 based onaudio information 308 and time indices 312. In some embodiments,indexing module 310 may be operative to generate indexed audioinformation 313 by time-stamping audio information 308 using timeindices 312. The embodiments are not limited in this context.

In various embodiments, apparatus 300 may comprise a transceiver 314.Transceiver 314 may include one or more radios capable of transmittingand receiving signals using various suitable wireless communicationstechniques. Such techniques may involve communications across one ormore wireless networks. Exemplary wireless networks include (but are notlimited to) wireless local area networks (WLANs), wireless personal areanetworks (WPANs), wireless metropolitan area network (WMANs), cellularnetworks, and satellite networks. In communicating across such networks,transceiver 344 may operate in accordance with one or more applicablestandards in any version. The embodiments are not limited in thiscontext.

In some embodiments, apparatus 300 may comprise a network controller316. In various embodiments, network controller 316 may comprise logic,circuitry, and/or instructions operative to enable communication betweenapparatus 300 and one or more external devices over a network 318. Insome embodiments, network 318 may comprise a Bluetooth network, andnetwork controller 316 may comprise a Bluetooth network controller. Invarious embodiments, network 318 may comprise a wireless network, andnetwork controller 316 may enable communication by apparatus 300 overnetwork 318 using transceiver 314. In some other embodiments, network318 may comprise a wired network, and network controller 316 may enablecommunication by apparatus 300 over network 318 using one or more wiredconnections. The embodiments are not limited in this context.

In various embodiments, apparatus 300 may comprise a network controller320. In some embodiments, network controller 320 may comprise logic,circuitry, and/or instructions operative to enable communication betweenapparatus 300 and one or more external devices over a network 322. Invarious embodiments, network 322 may comprise a wireless network, andnetwork controller 320 may enable communication by apparatus 300 overnetwork 322 using transceiver 314. In some other embodiments, network322 may comprise a wired network, and network controller 320 may enablecommunication by apparatus 300 over network 322 using one or more wiredconnections. In various embodiments, apparatus 300 may comprise a singlenetwork controller that enables communications over both network 318 andnetwork 322. The embodiments are not limited in this context.

FIG. 3 also illustrates a block diagram of a system 340. System 340 maycomprise any of the aforementioned elements of apparatus 300. System 340may further comprise a display 342. Display 342 may comprise any displaydevice capable of displaying information received from processor circuit302. Examples for display 342 may include a television, a monitor, aprojector, and a computer screen. In one embodiment, for example,display 342 may be implemented by a liquid crystal display (LCD), lightemitting diode (LED) or other type of suitable visual interface. Display342 may comprise, for example, a touch-sensitive color display screen.In various implementations, display 342 may comprise one or morethin-film transistors (TFT) LCD including embedded transistors. Invarious embodiments, display 342 may be arranged to display a graphicaluser interface operable to directly or indirectly control one or moreelements of apparatus 300. The embodiments are not limited in thisrespect.

In some embodiments, apparatus 300 and/or system 340 may comprise or beconfigurable to communicatively couple with a microphone 324. Microphone324 may comprise any device capable of capturing ambient tones, music,speech, speech utterances, sound effects, background noise, or othersounds. In various embodiments, audio management module 306 may beoperative to generate audio information 308 by capturing ambient tones,music, speech, speech utterances, sound effects, background noise, orother sounds using microphone 324. The embodiments are not limited inthis context.

In general operation, apparatus 300 and/or system 340 may be operativeto generate audio information 308, generate time indices 312 for theaudio information 308, timestamp the audio information 308 with the timeindices 312 to obtain indexed audio information 313, and transmit theindexed audio information 313 to a central device 350 over network 322.The embodiments are not limited in this respect.

In various embodiments, audio management module 306 may be operative togenerate audio information 308 corresponding to a live event. Forexample, in some embodiments, audio management module 306 may beoperative to generate audio information 308 corresponding to aconference, a speech, a sporting event, a concert, and/or any other typeof event during which ambient tones, music, speech, speech utterances,sound effects, background noise, or other sounds may occur. In variousembodiments, audio management module 306 may be operative to generateaudio information 308 by using microphone 324 to capture such ambienttones, music, speech, speech utterances, sound effects, backgroundnoise, or other sounds that occur during the live event. The embodimentsare not limited in this context.

In some embodiments, audio indexing module 310 may be operative togenerate time indices 312 for audio information 308. In various suchembodiments, audio indexing module 310 may be operative to generate timeindices 312 according to an inter-device temporal frame of reference. Insome embodiments, such time indices 312 may indicate, for any particularportion of audio information 308, a time—according to the inter-devicetemporal frame of reference—at which that particular portion reached adefined point in an audio capture, processing, and/or transmissionprocess of apparatus 300 and/or system 340. In various embodiments, anaudio capture, processing, and transmission process for apparatus 300and/or system 340 may comprise capturing audio input using microphone324, passing the audio input to audio management module 306, generatingaudio information 308 at audio management module 306 based on the audioinput, passing the audio information 308 to network controller 320, andtransmitting the audio information 308 over network 322 using networkcontroller 320. In an example embodiment, time indices 312 may indicate,for any particular portion of audio information 308, a time—according tothe inter-device temporal frame of reference—that that portion of audioinformation 308 became ready for transmission to a central device 350over network 322 using network controller 320. The embodiments are notlimited to this example.

In some embodiments, such an inter-device temporal frame of referencemay be defined according to time indices 326-q for the network 318. Invarious embodiments, the time indices 326-q for network 318 may compriseclock signals for network 318. In some embodiments, network 318 maycomprise a Bluetooth network, and time indices 326-q may compriseBluetooth network clock signals. The embodiments are not limited to thisexample.

In various embodiments, audio indexing module 310 may be operative togenerate time indices 312 for audio information 308 based on the timeindices 326-q for network 318. In some embodiments, audio indexingmodule 310 may be operative to generate time indices 312 that compriserelative offsets of time indices 326-q. In various embodiments, eachtime index 312 may be of the form [N, s], where N identifies a networkclock signal and s identifies an offset of the network clock signal N.In some embodiments in which network 318 comprises a Bluetooth networkand time indices 326-q comprise Bluetooth network clock signals, audioindexing module 310 may be operative to generate time indices 312 thatcomprise relative offsets of Bluetooth network clock signals, expressedin terms of the Bluetooth symbol clock. In various such embodiments,audio indexing module 310 may be operative to generate time indices 312that are expressed as a number of Bluetooth symbol clock periods thathave occurred since the most recent Bluetooth network clock signal. Insome embodiments, network 318 may comprise a Bluetooth network having a312.5 μs Bluetooth network clock and a 1 μs Bluetooth symbol clock. Inan example of such an embodiment, for a portion of audio information 308comprising a sound that occurred 9 μs after a Bluetooth network clocksignal N₃, audio indexing module 310 may be operative to generate a timeindex 312 of the form [N₃, 9], indicating that the sound occurred andwas captured 9 μs after receipt of the Bluetooth network clock signalN₃. In various embodiments, audio indexing module 310 may be operativeto generate indexed audio information 313 based on audio information 308and time indices 312. In some embodiments, audio indexing module 310 maybe operative to timestamp audio information 308 with time indices 312 inorder to generate indexed audio information 313. The embodiments are notlimited in this context.

In various embodiments, apparatus 300 and/or system 340 may be operativeto transmit indexed audio information 313 to a central device 350. Insome embodiments, apparatus 300 and/or system 340 may be operative totransmit indexed audio information 313 to central device 350 overnetwork 322. In various such embodiments, network 322 may comprise awireless network, and apparatus 300 and/or system 340 may be operativeto transmit indexed audio information 313 to central device 350 overnetwork 322 using transceiver 314, and/or one or more othertransceivers, transmitters, and/or antennas. In some other embodiments,network 322 may comprise a wired network, and apparatus 300 and/orsystem 340 may be operative to transmit indexed audio information 313 tocentral device 350 over network 322 using one or more wired connections.The embodiments are not limited in this context.

In some embodiments, apparatus 300 and/or system 340 may be operative toreceive audio information from central device 350 and/or another remotedevice and determine a playback time for the audio information accordingto the inter-device temporal frame of reference. In various suchembodiments, apparatus 300 and/or system 340 may be operative todetermine a time index 312-p for the received audio information,determine a transmission delay value for the audio information based onthe time index 312-p and on a time index comprised within the audioinformation, determine a total delay value for the audio informationbased on the transmission delay value, and determine the playback timefor the audio information based on the transmission delay value. Invarious embodiments, apparatus 300 and/or system 340 may play back theaudio information at the playback time, and this playback may besynchronized with playback of the audio information by another remotedevice operating according to the same inter-device temporal frame ofreference. The embodiments are not limited in this context.

FIG. 4 illustrates a central device 400 such as may comprise an exampleof a central device 202 of FIG. 2 according to various embodiments. Asshown in FIG. 4, apparatus 400 comprises multiple elements including aprocessor circuit 402, a memory unit 404, an audio synchronizationmodule 405, an audio management module 406, a transceiver 414, a networkcontroller 416, and a network controller 420. The embodiments, however,are not limited to the type, number, or arrangement of elements shown inthis figure.

In various embodiments, apparatus 400 may comprise processor circuit402. Processor circuit 402 may be implemented using any processor orlogic device, and may be the same as or similar to processor circuit 302of FIG. 3. The embodiments are not limited in this context.

In some embodiments, apparatus 400 may comprise or be arranged tocommunicatively couple with a memory unit 404. Memory unit 404 may beimplemented using any machine-readable or computer-readable mediacapable of storing data, including both volatile and non-volatilememory, and may be the same as or similar to memory unit 304 of FIG. 3.It is worthy of note that some portion or all of memory unit 304 may beincluded on the same integrated circuit as processor circuit 402, oralternatively some portion or all of memory unit 304 may be disposed onan integrated circuit or other medium, for example a hard disk drive,that is external to the integrated circuit of processor circuit 402.Although memory unit 404 is comprised within apparatus 400 in FIG. 4,memory unit 404 may be external to apparatus 400 in some embodiments.The embodiments are not limited in this context.

In some embodiments, apparatus 400 may comprise an audio synchronizationmodule 405. Audio synchronization module 405 may comprise logic,circuitry, or instructions operative to synchronize and combine variousaudio information to obtain composite audio information 428. In variousembodiments, audio synchronization module 405 may be operative tosynchronize and combine audio information originating from multiplesources. The embodiments are not limited in this context.

In some embodiments, apparatus 400 may comprise an audio managementmodule 406. Audio management module 406 may comprise an audio subsystemfor apparatus 400 in various embodiments. In some embodiments, audiomanagement module may comprise logic, circuitry, or instructionsoperative to generate audio information 408. Audio information 408 maycomprise information, data, logic, and/or instructions representingtones, music, speech, speech utterances, sound effects, backgroundnoise, or other sounds.

In various embodiments, apparatus 400 may comprise a transceiver 414.Transceiver 414 may include one or more radios capable of transmittingand receiving signals using various suitable wireless communicationstechniques, and may be the same as or similar to transceiver 314 of FIG.3.

In some embodiments, apparatus 400 may comprise a network controller416. In various embodiments, network controller 416 may comprise logic,circuitry, and/or instructions operative to enable communication betweenapparatus 400 and one or more external devices over network 318 of FIG.3. As noted above, in some embodiments, network 318 of FIG. 3 maycomprise a wireless network, and thus network controller 416 may enablecommunication by apparatus 400 over network 318 using transceiver 414.In various other embodiments, network 318 may comprise a wired network,and network controller 416 may enable communication by apparatus 400over network 318 using one or more wired connections. The embodimentsare not limited in this context.

In some embodiments, apparatus 400 may comprise a network controller420. In various embodiments, network controller 420 may comprise logic,circuitry, and/or instructions operative to enable communication betweenapparatus 400 and one or more external devices over network 322 of FIG.3. As noted above, in some embodiments, network 322 of FIG. 3 maycomprise a wireless network, and thus network controller 420 may enablecommunication by apparatus 400 over network 322 using transceiver 414.In various other embodiments, network 322 may comprise a wired network,and network controller 420 may enable communication by apparatus 400over network 322 using one or more wired connections. In someembodiments, apparatus 400 may comprise a single network controller thatenables communications over both network 318 and network 322. Theembodiments are not limited in this context.

In various embodiments, apparatus 400 may comprise a local clock 430. Insome embodiments, local clock 430 may comprise a clock, oscillator, orother timing device internal to apparatus 400 that drives operations ofone or more elements within apparatus 400. In various embodiments, forexample, local clock 430 may comprise a clock for processor circuit 402.The embodiments are not limited to this example.

FIG. 4 also illustrates a block diagram of a system 440. System 440 maycomprise any of the aforementioned elements of apparatus 400. System 440may further comprise a display 442. Display 442 may comprise any displaydevice capable of displaying information received from processor circuit402, and may be the same as or similar to display 342 of FIG. 3. Invarious embodiments, display 442 may be arranged to display a graphicaluser interface operable to directly or indirectly control one or moreelements of apparatus 400. The embodiments are not limited in thisrespect.

In some embodiments, apparatus 400 and/or system 440 may comprise or beconfigurable to communicatively couple with a microphone 424. Microphone424 may comprise any device capable of capturing ambient tones, music,speech, speech utterances, sound effects, background noise, or othersounds, and may be the same as or similar to microphone 324 of FIG. 3.In various embodiments, audio management module 406 may be operative togenerate audio information 408 by capturing ambient tones, music,speech, speech utterances, sound effects, background noise, or othersounds using microphone 424. The embodiments are not limited in thiscontext.

In general operation, apparatus 400 and/or system 440 may be operativeto receive indexed audio information 313-n comprising audio information308-n and time indices 312-n-p for the audio information 308-n from oneor more remote devices 300-n, determine time indices 432-n-r for theaudio information 308-n based on network time indices 326-q, determinetotal delay values 434-n-s for the audio information 308-n based on thetime indices 312-n-p and the time indices 432-n-r, determine coordinatedtime indices 436-n-t for the audio information 308-n based on the totaldelay values, and determine composite audio information 428 based on theaudio information 308-n and the coordinated time indices 436-n-t. Invarious embodiments, apparatus 400 and/or system 440 may be operative toreceive audio information 308-n from multiple remote devices 300-n andmay be operative to generate composite audio information 428 based onthe audio information 308-n received from the multiple remote devices300-n. In some embodiments, apparatus 400 and/or system 440 may beoperative to generate its own audio information 408 as well as toreceive audio information 308-n from one or more remote devices 300-n.In various such embodiments, apparatus 400 and/or system 440 may beoperative to generate composite audio information 428 based on the audioinformation 408 that it generates and on the audio information 308-nreceived from the one or more remote devices 300-n. The embodiments arenot limited in this context.

In various embodiments, audio synchronization module 405 may beoperative to receive indexed audio information 313-n from one or moreremote devices 300-n, such as remote device 300 of FIG. 3. In someembodiments, audio synchronization module 405 may be operative toreceive indexed audio information 313-n over network 322, which maycomprise a same network as network 322 of FIG. 3. In variousembodiments, audio synchronization module 405 may be operative toreceive indexed audio information 313-n over network 322 in the form ofone or more audio streams. In some such embodiments, for each remotedevice 300-n from which audio synchronization module 405 receivesindexed audio information 313-n over network 322, audio synchronizationmodule 405 may receive a corresponding audio stream comprising thatindexed audio information 313-n. In various embodiments, indexed audioinformation 313-n received from any particular remote device 300-n maycomprise audio information 308-n generated by that device and timeindices 312-n-p for that audio information 308-n. In some embodiments,the time indices 312-n-p may indicate, for any particular portion ofaudio information 308-n, a time—according to the inter-device temporalframe of reference—at which that particular portion reached a definedpoint in an audio capture, processing, and/or transmission process ofits corresponding remote device 300-n. For example, the time indices312-n-p may indicate, for any particular portion of audio information308-n, a time—according to the inter-device temporal frame ofreference—at which that particular portion became ready for transmissionto apparatus 400 and/or system 440 from its corresponding remote device300-n. The embodiments are not limited in this context.

In various embodiments, audio synchronization module 405 may beoperative to determine time indices 432-n-r for the received audioinformation 308-n. In some embodiments, the time indices 432-n-r mayindicate, for any particular portion of audio information 308-n, atime—according to the inter-device temporal frame of reference—at whichthat particular portion reached a second defined point in an audiocapture, processing, and/or transmission process of its correspondingremote device 300-n. For example, the time indices 432-n-r may indicate,for any particular portion of audio information 308-n, a time—accordingto the inter-device temporal frame of reference—at which that particularportion was received by apparatus 400 and/or system 440 from itscorresponding remote device 300-n. In various embodiments, audiosynchronization module 405 may be operative to determine time indices432-n-r based on network time indices 326-q for network 318. In someembodiments, audio synchronization module 405 may be operative togenerate time indices 432-n-r that comprise relative offsets of timeindices 326-q. In various embodiments, each time index 432-n-r may be ofthe form [N, s], where N identifies a network clock signal and sidentifies an offset of the network clock signal N. In some embodimentsin which network 318 comprises a Bluetooth network and time indices326-q comprise Bluetooth network clock signals, audio synchronizationmodule 405 may be operative to generate time indices 432-n-r thatcomprise relative offsets of Bluetooth network clock signals, expressedin terms of the Bluetooth symbol clock. In various such embodiments,audio synchronization module 405 may be operative to generate timeindices 432-n-r that are expressed as a number of Bluetooth symbol clockperiods that have occurred since the most recent Bluetooth network clocksignal. The embodiments are not limited in this context.

In some embodiments, audio synchronization module 405 may be operativeto determine transmission delay values for the received audioinformation 308-n based on the received time indices 312-n-p and thegenerated time indices 432-n-r. In various embodiments, audiosynchronization module 405 may be operative to determine suchtransmission delay values by subtracting the time indices 312-n-p fromthe generated time indices 432-n-r. In some embodiments, thetransmission delay values may indicate a duration of a time perioddefined by the first and second defined points in the audio capture,processing, and/or transmission processes of remote devices 300-n. Forexample, if a received time index 312-n-p indicate a time at which aparticular portion of audio information 308-n was ready for transmissionto apparatus 400 and/or system 440 from its remote device 300-n, and agenerated time index 432-n-r indicates a time at which that particularportion of audio information 308-n was received by apparatus 400 and/orsystem 440, a transmission delay value calculated by subtracting thetime index 312-n-p from the time index 432-n-r may indicate a delayassociated with transmission of the particular portion of audioinformation from its remote device 300-n to apparatus 400 and/or system440. The embodiments are not limited to this example.

In some embodiments, audio synchronization module 405 may be operativeto determine total delay values 434-n-s for the received audioinformation 308-n based on the transmission delay values for that audioinformation 308-n and on known remote processing delay values for theaudio information 308-n. For any particular portion of audio information308-n, a remote processing delay value may indicate a duration ofprocessing of that audio information 308-n prior to the generation of atime index 312-n-p at its respective remote device 300-n. Theembodiments are not limited in this context.

In various embodiments, audio synchronization module 405 may beoperative to determine coordinated time indices 436-n-t for the receivedaudio information 308-n based on the total delay values 434-n-s. In someembodiments, audio synchronization module 405 may be operative todetermine coordinated time indices 436-n-t according to a local temporalframe of reference defined by local clock 430. In various embodiments,coordinated time indices 436-n-t may comprise local times definedaccording to the local clock 430. In some embodiments, audiosynchronization module 405 may be operative to determine coordinatedtime indices 436-n-t for particular audio information 308-n according tothe local temporal frame of reference based on the total delay values434-n-s for that audio information 308-n and on the local clock 430. Insome embodiments, audio synchronization module 405 may be operative todetermine, upon receipt of any particular portion of audio information308-n, a coordinated time index 436-n-t by subtracting a total delayvalue 434-n-s for that portion of audio information 308-n from thecurrent local time according to the local clock 430. In various suchembodiments, the coordinated time indices 436-n-t may indicate localtimes at which their corresponding portions of audio information 308-nwere captured, according to the local clock 430. The embodiments are notlimited in this context.

In some embodiments, audio synchronization module 405 may be operativeto generate composite audio information 428 based on audio information308-n and on coordinated time indices 436-n-t. In various embodiments,apparatus 400 and/or system 440 may be operative to receive audioinformation 308-n from multiple remote devices 300-n, and audiosynchronization module 405 be operative to generate composite audioinformation 428 by combining the various received audio information308-n based on corresponding coordinated time indices 436-n-t. In someembodiments, audio synchronization module 405 may be operative toutilize coordinated time indices 436-n-t to determine portions of audioinformation 308-n that were captured substantially simultaneously bydifferent remote devices 300-n, and thus may be able to generatecomposite audio information 428 in which those portions of audioinformation 308-n are temporally aligned. In various embodiments,composite audio information 428 may comprise an audio stream. Theembodiments are not limited in this context.

In some embodiments, audio management module 406 may be operative togenerate audio information 408. In various embodiments, audioinformation 408 may correspond to a same live event as that to which theindexed audio information 313-n received from remote devices 300-ncorresponds. For example, in some embodiments, audio management module406 may be operative to generate audio information 408 by capturingaudio in a conference in which audio is also being captured by remotedevices 300-n. In various embodiments, audio management module 406 maybe operative to generate audio information 408 by using microphone 424to capture ambient tones, music, speech, speech utterances, soundeffects, background noise, or other sounds that occur during the liveevent. The embodiments are not limited in this context.

In some embodiments, audio synchronization module 405 may be operativeto determine coordinated time indices 438-v for audio information 408.In various embodiments, coordinated time indices 438-v may be definedaccording to the same local temporal frame of reference as coordinatedtime indices 436-n-t. In some such embodiments, coordinated time indices438-v may comprise local times defined according to the local clock 430.In various embodiments, for any particular portion of audio information408, a coordinated time index 438-v may indicate a time—according to thelocal temporal frame of reference—that that portion of audio information408 was captured. In some embodiments, audio synchronization module 405may be operative to generate coordinated time indices 438-v directly,based on local clock 430, without generating time indices for audioinformation 408 that are based on the inter-device temporal frame ofreference. In various embodiments, audio synchronization module 405 maybe operative to generate time indices for audio information 408 based onthe inter-device temporal frame of reference, and may then be operativeto generate coordinated time indices 438-v for audio information 408based on those time indices and on a local processing delay valueindicating a delay between generation of the audio information 408 byaudio management module 406 and receipt of the audio information 408 byaudio synchronization module 405. The embodiments are not limited inthis context.

In some embodiments, audio synchronization module 405 may be operativeto generate composite audio information 428 by combining audioinformation 408 with audio information 308-n received from one or moreremote devices 300-n. In various embodiments, audio synchronizationmodule 405 may be operative to generate composite audio information 428based on audio information 408, audio information 308-n, coordinatedtime indices 436-n-t, and coordinated time indices 438-v. Theembodiments are not limited in this context.

Operations for the above embodiments may be further described withreference to the following figures and accompanying examples. Some ofthe figures may include a logic flow. Although such figures presentedherein may include a particular logic flow, it can be appreciated thatthe logic flow merely provides an example of how the generalfunctionality as described herein can be implemented. Further, the givenlogic flow does not necessarily have to be executed in the orderpresented unless otherwise indicated. In addition, the given logic flowmay be implemented by a hardware element, a software element executed bya processor, or any combination thereof. The embodiments are not limitedin this context.

FIG. 5 illustrates one embodiment of a logic flow 500, which may berepresentative of the operations executed by one or more embodimentsdescribed herein. More particularly, logic flow 500 may comprise anexample of a process for generating composite audio information such asmay be performed by apparatus 400 and/or system 440 of FIG. 4 in someembodiments. As shown in logic flow 500, audio information comprising afirst network time index may be received at 502. For example, audiosynchronization module 405 of FIG. 4 may receive indexed audioinformation 313-n comprising audio information 308-n and a time index312-n-p. In a more particular example, the time index 312-n-p maycomprise a first timestamp applied to the audio information 308-n by itsremote device 300-n prior to transmission of the audio information 308-nto apparatus 400 and/or system 440. At 504, a second network time indexmay be determined for the audio information. For example, audiosynchronization module 405 of FIG. 4 may determine a time index 432-n-rfor the audio information 308-n. In a more particular example, the timeindex 432-n-r may comprise a second timestamp applied to the audioinformation 308-n by audio synchronization module 405 upon receipt ofthe audio information 308-n.

At 506, a transmission delay value may be determined for the audioinformation. For example, audio synchronization module 405 of FIG. 4 maydetermine a transmission delay value for audio information 308-n basedon the time index 312-n-p and the time index 432-n-r. In a moreparticular example, audio synchronization module 405 of FIG. 4 maydetermine the transmission delay value for audio information 308-n bysubtracting the first timestamp from the second timestamp. At 508, atotal delay value for the audio information may be determined. Forexample, audio synchronization module 405 of FIG. 4 may determine atotal delay value 434-n-s for the audio information 308-n based on thetransmission delay value for the audio information 308-n and on a remoteprocessing delay value for the audio information 308-n. At 510, acoordinated time index for the audio information may be determined. Forexample, audio synchronization module 405 of FIG. 4 may determine acoordinated time index 436-n-t for the audio information 308-n based onthe total delay value 434-n-s for the audio information 308-n and on thelocal clock 430. The embodiments are not limited to these examples.

FIG. 6 illustrates one embodiment of a logic flow 600, which may berepresentative of the operations executed by one or more embodimentsdescribed herein. More particularly, logic flow 600 may comprise anexample of a process for generating indexed audio information such asmay be performed by apparatus 300 and/or system 340 of FIG. 3 in variousembodiments. As shown in logic flow 600, at 602, audio information maybe received. For example, audio indexing module 310 of FIG. 3 mayreceive audio information 308 from audio management module 306. At 604,time indices may be determined for the audio information based on anetwork clock for a first network. For example, audio indexing module310 of FIG. 3 may determine time indices 312-p for audio information 308based on time indices 326-q defined by a network clock for network 318.At 606, indexed audio information may be generated based on the timeindices. For example, audio indexing module 310 of FIG. 3 may generateindexed audio information 313 based on time indices 312-p and audioinformation 308. At 608, the indexed audio information may betransmitted to a computing device over a second network. For example,apparatus 300 and/or system 340 of FIG. 3 may transmit indexed audioinformation to a computing device over network 322. The embodiments arenot limited to these examples.

FIG. 7 illustrates one embodiment of a system 700. In variousembodiments, system 700 may be representative of a system orarchitecture suitable for use with one or more embodiments describedherein, such as apparatus 300 and/or system 340 of FIG. 3, apparatus 400and/or system 440 of FIG. 4, logic flow 500 of FIG. 5, and/or logic flow600 of FIG. 6. The embodiments are not limited in this respect.

As shown in FIG. 7, system 700 may include multiple elements. One ormore elements may be implemented using one or more circuits, components,registers, processors, software subroutines, modules, or any combinationthereof, as desired for a given set of design or performanceconstraints. Although FIG. 7 shows a limited number of elements in acertain topology by way of example, it can be appreciated that more orless elements in any suitable topology may be used in system 700 asdesired for a given implementation. The embodiments are not limited inthis context.

In various embodiments, system 700 may include a processor circuit 702.Processor circuit 702 may be implemented using any processor or logicdevice, and may be the same as or similar to processor circuit 302 ofFIG. 3 and/or processor circuit 402 of FIG. 4.

In one embodiment, system 700 may include a memory unit 704 to couple toprocessor circuit 702. Memory unit 704 may be coupled to processorcircuit 702 via communications bus 743, or by a dedicated communicationsbus between processor circuit 702 and memory unit 704, as desired for agiven implementation. Memory unit 704 may be implemented using anymachine-readable or computer-readable media capable of storing data,including both volatile and non-volatile memory, and may be the same asor similar to memory unit 304 of FIG. 3 and/or memory unit 404 of FIG.4. In some embodiments, the machine-readable or computer-readable mediummay include a non-transitory medium. The embodiments are not limited inthis context.

In various embodiments, system 700 may include a transceiver 744.Transceiver 744 may include one or more radios capable of transmittingand receiving signals using various suitable wireless communicationstechniques, and may be the same as or similar to transceiver 314 of FIG.3 and/or transceiver 414 of FIG. 4. The embodiments are not limited inthis context.

In various embodiments, system 700 may include a display 745. Display745 may constitute any display device capable of displaying informationreceived from processor circuit 702, and may be the same as or similarto display 342 of FIG. 3 and/or display 442 of FIG. 4.

In various embodiments, system 700 may include storage 746. Storage 746may be implemented as a non-volatile storage device such as, but notlimited to, a magnetic disk drive, optical disk drive, tape drive, aninternal storage device, an attached storage device, flash memory,battery backed-up SDRAM (synchronous DRAM), and/or a network accessiblestorage device. In embodiments, storage 746 may include technology toincrease the storage performance enhanced protection for valuabledigital media when multiple hard drives are included, for example.Further examples of storage 746 may include a hard disk, floppy disk,Compact Disk Read Only Memory (CD-ROM), Compact Disk Recordable (CD-R),Compact Disk Rewriteable (CD-RW), optical disk, magnetic media,magneto-optical media, removable memory cards or disks, various types ofDVD devices, a tape device, a cassette device, or the like. Theembodiments are not limited in this context.

In various embodiments, system 700 may include one or more I/O adapters747. Examples of I/O adapters 747 may include Universal Serial Bus (USB)ports/adapters, IEEE 1394 Firewire ports/adapters, and so forth. Theembodiments are not limited in this context.

FIG. 8 illustrates an embodiment of a system 800. In variousembodiments, system 800 may be representative of a system orarchitecture suitable for use with one or more embodiments describedherein, such as apparatus 300 and/or system 340 of FIG. 3, apparatus 400and/or system 440 of FIG. 4, logic flow 500 of FIG. 5, logic flow 600 ofFIG. 6, and/or system 700 of FIG. 7. The embodiments are not limited inthis respect.

As shown in FIG. 8, system 800 may include multiple elements. One ormore elements may be implemented using one or more circuits, components,registers, processors, software subroutines, modules, or any combinationthereof, as desired for a given set of design or performanceconstraints. Although FIG. 8 shows a limited number of elements in acertain topology by way of example, it can be appreciated that more orless elements in any suitable topology may be used in system 800 asdesired for a given implementation. The embodiments are not limited inthis context.

In embodiments, system 800 may be a media system although system 800 isnot limited to this context. For example, system 800 may be incorporatedinto a personal computer (PC), laptop computer, ultra-laptop computer,tablet, touch pad, portable computer, handheld computer, palmtopcomputer, personal digital assistant (PDA), cellular telephone,combination cellular telephone/PDA, television, smart device (e.g.,smart phone, smart tablet or smart television), mobile internet device(MID), messaging device, data communication device, and so forth.

In embodiments, system 800 includes a platform 801 coupled to a display845. Platform 801 may receive content from a content device such ascontent services device(s) 848 or content delivery device(s) 849 orother similar content sources. A navigation controller 850 including oneor more navigation features may be used to interact with, for example,platform 801 and/or display 845. Each of these components is describedin more detail below.

In embodiments, platform 801 may include any combination of a processorcircuit 802, chipset 803, memory unit 804, transceiver 844, storage 846,applications 806, and/or graphics subsystem 851. Chipset 803 may provideintercommunication among processor circuit 802, memory unit 804,transceiver 844, storage 846, applications 806, and/or graphicssubsystem 851. For example, chipset 803 may include a storage adapter(not depicted) capable of providing intercommunication with storage 846.

Processor circuit 802 may be implemented using any processor or logicdevice, and may be the same as or similar to processor circuit 702 inFIG. 7.

Memory unit 804 may be implemented using any machine-readable orcomputer-readable media capable of storing data, and may be the same asor similar to memory unit 704 in FIG. 7.

Transceiver 844 may include one or more radios capable of transmittingand receiving signals using various suitable wireless communicationstechniques, and may be the same as or similar to transceiver 744 in FIG.7.

Display 845 may include any television type monitor or display, and maybe the same as or similar to display 745 in FIG. 7.

Storage 846 may be implemented as a non-volatile storage device, and maybe the same as or similar to storage 746 in FIG. 7.

Graphics subsystem 851 may perform processing of images such as still orvideo for display. Graphics subsystem 851 may be a graphics processingunit (GPU) or a visual processing unit (VPU), for example. An analog ordigital interface may be used to communicatively couple graphicssubsystem 851 and display 845. For example, the interface may be any ofa High-Definition Multimedia Interface, DisplayPort, wireless HDMI,and/or wireless HD compliant techniques. Graphics subsystem 851 could beintegrated into processor circuit 802 or chipset 803. Graphics subsystem851 could be a stand-alone card communicatively coupled to chipset 803.

The graphics and/or video processing techniques described herein may beimplemented in various hardware architectures. For example, graphicsand/or video functionality may be integrated within a chipset.Alternatively, a discrete graphics and/or video processor may be used.As still another embodiment, the graphics and/or video functions may beimplemented by a general purpose processor, including a multi-coreprocessor. In a further embodiment, the functions may be implemented ina consumer electronics device.

In embodiments, content services device(s) 848 may be hosted by anynational, international and/or independent service and thus accessibleto platform 801 via the Internet, for example. Content servicesdevice(s) 848 may be coupled to platform 801 and/or to display 845.Platform 801 and/or content services device(s) 848 may be coupled to anetwork 852 to communicate (e.g., send and/or receive) media informationto and from network 852. Content delivery device(s) 849 also may becoupled to platform 801 and/or to display 845.

In embodiments, content services device(s) 848 may include a cabletelevision box, personal computer, network, telephone, Internet enableddevices or appliance capable of delivering digital information and/orcontent, and any other similar device capable of unidirectionally orbidirectionally communicating content between content providers andplatform 801 and/display 845, via network 852 or directly. It will beappreciated that the content may be communicated unidirectionally and/orbidirectionally to and from any one of the components in system 800 anda content provider via network 852. Examples of content may include anymedia information including, for example, video, music, medical andgaming information, and so forth.

Content services device(s) 848 receives content such as cable televisionprogramming including media information, digital information, and/orother content. Examples of content providers may include any cable orsatellite television or radio or Internet content providers. Theprovided examples are not meant to limit embodiments of the invention.

In embodiments, platform 801 may receive control signals from navigationcontroller 850 having one or more navigation features. The navigationfeatures of navigation controller 850 may be used to interact with auser interface 853, for example. In embodiments, navigation controller850 may be a pointing device that may be a computer hardware component(specifically human interface device) that allows a user to inputspatial (e.g., continuous and multi-dimensional) data into a computer.Many systems such as graphical user interfaces (GUI), and televisionsand monitors allow the user to control and provide data to the computeror television using physical gestures.

Movements of the navigation features of navigation controller 850 may beechoed on a display (e.g., display 845) by movements of a pointer,cursor, focus ring, or other visual indicators displayed on the display.For example, under the control of software applications 806, thenavigation features located on navigation controller 850 may be mappedto virtual navigation features displayed on user interface 853. Inembodiments, navigation controller 850 may not be a separate componentbut integrated into platform 801 and/or display 845. Embodiments,however, are not limited to the elements or in the context shown ordescribed herein.

In embodiments, drivers (not shown) may include technology to enableusers to instantly turn on and off platform 801 like a television withthe touch of a button after initial boot-up, when enabled, for example.Program logic may allow platform 801 to stream content to media adaptorsor other content services device(s) 848 or content delivery device(s)849 when the platform is turned “off.” In addition, chip set 803 mayinclude hardware and/or software support for 5.1 surround sound audioand/or high definition 7.1 surround sound audio, for example. Driversmay include a graphics driver for integrated graphics platforms. Inembodiments, the graphics driver may include a peripheral componentinterconnect (PCI) Express graphics card.

In various embodiments, any one or more of the components shown insystem 800 may be integrated. For example, platform 801 and contentservices device(s) 848 may be integrated, or platform 801 and contentdelivery device(s) 849 may be integrated, or platform 801, contentservices device(s) 848, and content delivery device(s) 849 may beintegrated, for example. In various embodiments, platform 801 anddisplay 845 may be an integrated unit. Display 845 and content servicedevice(s) 848 may be integrated, or display 845 and content deliverydevice(s) 849 may be integrated, for example. These examples are notmeant to limit the invention.

In various embodiments, system 800 may be implemented as a wirelesssystem, a wired system, or a combination of both. When implemented as awireless system, system 800 may include components and interfacessuitable for communicating over a wireless shared media, such as one ormore antennas, transmitters, receivers, transceivers, amplifiers,filters, control logic, and so forth. An example of wireless sharedmedia may include portions of a wireless spectrum, such as the RFspectrum and so forth. When implemented as a wired system, system 800may include components and interfaces suitable for communicating overwired communications media, such as I/O adapters, physical connectors toconnect the I/O adapter with a corresponding wired communicationsmedium, a network interface card (NIC), disc controller, videocontroller, audio controller, and so forth. Examples of wiredcommunications media may include a wire, cable, metal leads, printedcircuit board (PCB), backplane, switch fabric, semiconductor material,twisted-pair wire, co-axial cable, fiber optics, and so forth.

Platform 801 may establish one or more logical or physical channels tocommunicate information. The information may include media informationand control information. Media information may refer to any datarepresenting content meant for a user. Examples of content may include,for example, data from a voice conversation, videoconference, streamingvideo, electronic mail (“email”) message, voice mail message,alphanumeric symbols, graphics, image, video, text and so forth. Datafrom a voice conversation may be, for example, speech information,silence periods, background noise, comfort noise, tones and so forth.Control information may refer to any data representing commands,instructions or control words meant for an automated system. Forexample, control information may be used to route media informationthrough a system, or instruct a node to process the media information ina predetermined manner. The embodiments, however, are not limited to theelements or in the context shown or described in FIG. 8.

As described above, system 800 may be embodied in varying physicalstyles or form factors. FIG. 9 illustrates embodiments of a small formfactor device 900 in which system 800 may be embodied. In embodiments,for example, device 900 may be implemented as a mobile computing devicehaving wireless capabilities. A mobile computing device may refer to anydevice having a processing system and a mobile power source or supply,such as one or more batteries, for example.

As described above, examples of a mobile computing device may include apersonal computer (PC), laptop computer, ultra-laptop computer, tablet,touch pad, portable computer, handheld computer, palmtop computer,personal digital assistant (PDA), cellular telephone, combinationcellular telephone/PDA, television, smart device (e.g., smart phone,smart tablet or smart television), mobile internet device (MID),messaging device, data communication device, and so forth.

Examples of a mobile computing device also may include computers thatare arranged to be worn by a person, such as a wrist computer, fingercomputer, ring computer, eyeglass computer, belt-clip computer, arm-bandcomputer, shoe computers, clothing computers, and other wearablecomputers. In embodiments, for example, a mobile computing device may beimplemented as a smart phone capable of executing computer applications,as well as voice communications and/or data communications. Althoughsome embodiments may be described with a mobile computing deviceimplemented as a smart phone by way of example, it may be appreciatedthat other embodiments may be implemented using other wireless mobilecomputing devices as well. The embodiments are not limited in thiscontext.

As shown in FIG. 9, device 900 may include a display 945, a navigationcontroller 950, a user interface 953, a housing 954, an I/O device 955,and an antenna 956. Display 945 may include any suitable display unitfor displaying information appropriate for a mobile computing device,and may be the same as or similar to display 845 in FIG. 8. Navigationcontroller 950 may include one or more navigation features which may beused to interact with user interface 953, and may be the same as orsimilar to navigation controller 850 in FIG. 8. I/O device 955 mayinclude any suitable I/O device for entering information into a mobilecomputing device. Examples for I/O device 955 may include analphanumeric keyboard, a numeric keypad, a touch pad, input keys,buttons, switches, rocker switches, microphones, speakers, voicerecognition device and software, and so forth. Information also may beentered into device 900 by way of microphone. Such information may bedigitized by a voice recognition device. The embodiments are not limitedin this context.

Various embodiments may be implemented using hardware elements, softwareelements, or a combination of both. Examples of hardware elements mayinclude processors, microprocessors, circuits, circuit elements (e.g.,transistors, resistors, capacitors, inductors, and so forth), integratedcircuits, application specific integrated circuits (ASIC), programmablelogic devices (PLD), digital signal processors (DSP), field programmablegate array (FPGA), logic gates, registers, semiconductor device, chips,microchips, chip sets, and so forth. Examples of software may includesoftware components, programs, applications, computer programs,application programs, system programs, machine programs, operatingsystem software, middleware, firmware, software modules, routines,subroutines, functions, methods, procedures, software interfaces,application program interfaces (API), instruction sets, computing code,computer code, code segments, computer code segments, words, values,symbols, or any combination thereof. Determining whether an embodimentis implemented using hardware elements and/or software elements may varyin accordance with any number of factors, such as desired computationalrate, power levels, heat tolerances, processing cycle budget, input datarates, output data rates, memory resources, data bus speeds and otherdesign or performance constraints.

One or more aspects of at least one embodiment may be implemented byrepresentative instructions stored on a machine-readable medium whichrepresents various logic within the processor, which when read by amachine causes the machine to fabricate logic to perform the techniquesdescribed herein. Such representations, known as “IP cores” may bestored on a tangible, machine readable medium and supplied to variouscustomers or manufacturing facilities to load into the fabricationmachines that actually make the logic or processor. Some embodiments maybe implemented, for example, using a machine-readable medium or articlewhich may store an instruction or a set of instructions that, ifexecuted by a machine, may cause the machine to perform a method and/oroperations in accordance with the embodiments. Such a machine mayinclude, for example, any suitable processing platform, computingplatform, computing device, processing device, computing system,processing system, computer, processor, or the like, and may beimplemented using any suitable combination of hardware and/or software.The machine-readable medium or article may include, for example, anysuitable type of memory unit, memory device, memory article, memorymedium, storage device, storage article, storage medium and/or storageunit, for example, memory, removable or non-removable media, erasable ornon-erasable media, writeable or rewriteable media, digital or analogmedia, hard disk, floppy disk, Compact Disk Read Only Memory (CD-ROM),Compact Disk Recordable (CD-R), Compact Disk Rewriteable (CD-RW),optical disk, magnetic media, magneto-optical media, removable memorycards or disks, various types of Digital Versatile Disk (DVD), a tape, acassette, or the like. The instructions may include any suitable type ofcode, such as source code, compiled code, interpreted code, executablecode, static code, dynamic code, encrypted code, and the like,implemented using any suitable high-level, low-level, object-oriented,visual, compiled and/or interpreted programming language.

The following examples pertain to further embodiments:

At least one machine-readable medium may comprise a plurality ofinstructions that, in response to being executed on a computing device,cause the computing device to receive audio information comprising afirst network time index defined with respect to a network clock for anetwork, determine a second network time index for the audioinformation, the second network time index defined with respect to thenetwork clock, determine a transmission delay value for the audioinformation based on a difference between the first network time indexand the second network time index, and determine a total delay value forthe audio information based on the transmission delay value and on aremote processing delay value for the audio information, the remoteprocessing delay value indicating a duration of processing of the audioinformation by a remote device.

Such at least one machine-readable medium may comprise instructionsthat, in response to being executed on the computing device, cause thecomputing device to determine a coordinated time index for the audioinformation based on the total delay value and on a local clock, thecoordinated time index indicating a time defined with respect to thelocal clock.

With respect to such at least one machine-readable medium, the networkclock may comprise a Bluetooth network clock for a Bluetooth network.

With respect to such at least one machine-readable medium, the firstnetwork time index may indicate a relative offset of a network clockvalue, and the relative offset may comprise a number of periods of asymbol clock for the network.

Such at least one machine-readable medium may comprise instructionsthat, in response to being executed on the computing device, cause thecomputing device to synchronize playback of the audio information bymultiple devices according to an inter-device temporal frame ofreference defined based on the network clock.

Such at least one machine-readable medium may comprise instructionsthat, in response to being executed on the computing device, cause thecomputing device to receive second audio information, determine acoordinated time index for the second audio information, and combine theaudio information with the second audio information based on thecoordinated time index for the audio information and the coordinatedtime index for the second audio information.

An apparatus may comprise a processor circuit and an audiosynchronization module for execution on the processor circuit to receiveaudio information comprising a first network time index defined withrespect to a network clock for a network, determine a second networktime index for the audio information, the second network time indexdefined with respect to the network clock, determine a transmissiondelay value for the audio information based on a difference between thefirst network time index and the second network time index, anddetermine a total delay value for the audio information based on thetransmission delay value and on a remote processing delay value for theaudio information, the remote processing delay value indicating aduration of processing of the audio information by a remote device.

With respect to such an apparatus, the audio synchronization module maybe for execution on the processor circuit to determine a coordinatedtime index for the audio information based on the total delay value andon a local clock, and the coordinated time index may indicate a timedefined with respect to the local clock.

With respect to such an apparatus, the network clock may comprise aBluetooth network clock for a Bluetooth network.

With respect to such an apparatus, the first network time index mayindicate a relative offset of a network clock value, and the relativeoffset comprising a number of periods of a symbol clock for the network.

With respect to such an apparatus, the audio synchronization module maybe for execution on the processor circuit to synchronize playback of theaudio information by multiple devices according to an inter-devicetemporal frame of reference defined based on the network clock.

With respect to such an apparatus, the audio synchronization module maybe for execution on the processor circuit to receive second audioinformation, determine a coordinated time index for the second audioinformation, and combine the audio information with the second audioinformation based on the coordinated time index for the audioinformation and the coordinated time index for the second audioinformation.

A method may comprise receiving audio information comprising a firstnetwork time index defined with respect to a network clock for anetwork, determining a second network time index for the audioinformation, the second network time index defined with respect to thenetwork clock, determining a transmission delay value for the audioinformation based on a difference between the first network time indexand the second network time index, and determining a total delay valuefor the audio information based on the transmission delay value and on aremote processing delay value for the audio information, the remoteprocessing delay value indicating a duration of processing of the audioinformation by a remote device.

Such a method may comprise determining a coordinated time index for theaudio information based on the total delay value and on a local clock,the coordinated time index indicating a time defined with respect to thelocal clock.

With respect to such a method, the network clock may comprise aBluetooth network clock for a Bluetooth network.

With respect to such a method, the first network time index may indicatea relative offset of a network clock value, and the relative offset maycomprise a number of periods of a symbol clock for the network.

Such a method may comprise synchronizing playback of the audioinformation by multiple devices according to an inter-device temporalframe of reference defined based on the network clock.

Such a method may comprise receiving second audio information,determining a coordinated time index for the second audio information,and combining the audio information with the second audio informationbased on the coordinated time index for the audio information and thecoordinated time index for the second audio information.

At least one machine-readable medium may comprise a plurality ofinstructions that, in response to being executed on a computing device,cause the computing device to generate audio information, determinenetwork time indices for the audio information based on a network clockfor a network, and generate indexed audio information based on thenetwork time indices and the audio information.

With respect to such at least one machine-readable medium, the networkmay comprise a Bluetooth network, and the network clock may comprise aBluetooth network clock of the Bluetooth network.

With respect to such at least one machine-readable medium, the networktime indices may comprise relative offsets of network clock values, andthe relative offsets may comprise numbers of periods of a symbol clockfor the network.

Such at least one machine-readable medium may comprise instructionsthat, in response to being executed on the computing device, cause thecomputing device to transmit the indexed audio information to a secondcomputing device over a second network.

An apparatus may comprise a processor circuit and an audio indexingmodule for execution on the processor circuit to generate audioinformation, determine network time indices for the audio informationbased on a network clock for a network, and generate indexed audioinformation based on the network time indices and the audio information.

With respect to such an apparatus, the network may comprise a Bluetoothnetwork, and the network clock may comprise a Bluetooth network clock ofthe Bluetooth network.

With respect to such an apparatus, the network time indices may compriserelative offsets of network clock values, and the relative offsets maycomprise numbers of periods of a symbol clock for the network.

With respect to such an apparatus, the audio indexing module may be forexecution on the processor circuit to transmit the indexed audioinformation to a computing device over a second network.

A system may comprise a processor circuit, a microphone coupled to theprocessor circuit, and a memory unit coupled to the processor circuit tostore an audio indexing module for execution on the processor circuit tocapture audio information using the microphone, determine time indicesfor the audio information based on a network clock for a network, andgenerate indexed audio information based on the time indices and theaudio information.

With respect to such a system, the network may comprise a Bluetoothnetwork, and the network clock may comprise a Bluetooth network clock ofthe Bluetooth network.

With respect to such a system, the network time indices may compriserelative offsets of network clock values, and the relative offsets maycomprise numbers of periods of a symbol clock for the network.

With respect to such a system, the audio indexing module may be forexecution on the processor circuit to transmit the indexed audioinformation to a computing device over a second network.

Numerous specific details have been set forth herein to provide athorough understanding of the embodiments. It will be understood bythose skilled in the art, however, that the embodiments may be practicedwithout these specific details. In other instances, well-knownoperations, components, and circuits have not been described in detailso as not to obscure the embodiments. It can be appreciated that thespecific structural and functional details disclosed herein may berepresentative and do not necessarily limit the scope of theembodiments.

Some embodiments may be described using the expression “coupled” and“connected” along with their derivatives. These terms are not intendedas synonyms for each other. For example, some embodiments may bedescribed using the terms “connected” and/or “coupled” to indicate thattwo or more elements are in direct physical or electrical contact witheach other. The term “coupled,” however, may also mean that two or moreelements are not in direct contact with each other, but yet stillco-operate or interact with each other.

Unless specifically stated otherwise, it may be appreciated that termssuch as “processing,” “computing,” “calculating,” “determining,” or thelike, refer to the action and/or processes of a computer or computingsystem, or similar electronic computing device, that manipulates and/ortransforms data represented as physical quantities (e.g., electronic)within the computing system's registers and/or memories into other datasimilarly represented as physical quantities within the computingsystem's memories, registers or other such information storage,transmission or display devices. The embodiments are not limited in thiscontext.

It should be noted that the methods described herein do not have to beexecuted in the order described, or in any particular order. Moreover,various activities described with respect to the methods identifiedherein can be executed in serial or parallel fashion.

Although specific embodiments have been illustrated and describedherein, it should be appreciated that any arrangement calculated toachieve the same purpose may be substituted for the specific embodimentsshown. This disclosure is intended to cover any and all adaptations orvariations of various embodiments. It is to be understood that the abovedescription has been made in an illustrative fashion, and not arestrictive one. Combinations of the above embodiments, and otherembodiments not specifically described herein will be apparent to thoseof skill in the art upon reviewing the above description. Thus, thescope of various embodiments includes any other applications in whichthe above compositions, structures, and methods are used.

It is emphasized that the Abstract of the Disclosure is provided tocomply with 37C.F.R. §1.72(b), requiring an abstract that will allow thereader to quickly ascertain the nature of the technical disclosure. Itis submitted with the understanding that it will not be used tointerpret or limit the scope or meaning of the claims. In addition, inthe foregoing Detailed Description, it can be seen that various featuresare grouped together in a single embodiment for the purpose ofstreamlining the disclosure. This method of disclosure is not to beinterpreted as reflecting an intention that the claimed embodimentsrequire more features than are expressly recited in each claim. Rather,as the following claims reflect, inventive subject matter lies in lessthan all features of a single disclosed embodiment. Thus the followingclaims are hereby incorporated into the Detailed Description, with eachclaim standing on its own as a separate preferred embodiment. In theappended claims, the terms “including” and “in which” are used as theplain-English equivalents of the respective terms “comprising” and“wherein,” respectively. Moreover, the terms “first,” “second,” and“third,” etc. are used merely as labels, and are not intended to imposenumerical requirements on their objects.

Although the subject matter has been described in language specific tostructural features and/or methodological acts, it is to be understoodthat the subject matter defined in the appended claims is notnecessarily limited to the specific features or acts described above.Rather, the specific features and acts described above are disclosed asexample forms of implementing the claims.

1. At least one machine-readable medium comprising a plurality ofinstructions that, in response to being executed on a computing device,cause the computing device to: receive audio information comprising afirst network time index defined with respect to a network clock for anetwork; determine a second network time index for the audioinformation, the second network time index defined with respect to thenetwork clock; determine a transmission delay value for the audioinformation based on a difference between the first network time indexand the second network time index; and determine a total delay value forthe audio information based on the transmission delay value and on aremote processing delay value for the audio information, the remoteprocessing delay value indicating a duration of processing of the audioinformation by a remote device.
 2. The at least one machine-readablemedium of claim 1, comprising instructions that, in response to beingexecuted on the computing device, cause the computing device todetermine a coordinated time index for the audio information based onthe total delay value and on a local clock, the coordinated time indexindicating a time defined with respect to the local clock.
 3. The atleast one machine-readable medium of claim 1, the network clockcomprising a Bluetooth network clock for a Bluetooth network.
 4. The atleast one machine-readable medium of claim 1, the first network timeindex indicating a relative offset of a network clock value, therelative offset comprising a number of periods of a symbol clock for thenetwork.
 5. The at least one machine-readable medium of claim 1,comprising instructions that, in response to being executed on thecomputing device, cause the computing device to synchronize playback ofthe audio information by multiple devices according to an inter-devicetemporal frame of reference defined based on the network clock.
 6. Theat least one machine-readable medium of claim 2, comprising instructionsthat, in response to being executed on the computing device, cause thecomputing device to: receive second audio information; determine acoordinated time index for the second audio information; and combine theaudio information with the second audio information based on thecoordinated time index for the audio information and the coordinatedtime index for the second audio information.
 7. An apparatus,comprising: a processor circuit; and an audio synchronization module forexecution on the processor circuit to: receive audio informationcomprising a first network time index defined with respect to a networkclock for a network; determine a second network time index for the audioinformation, the second network time index defined with respect to thenetwork clock; determine a transmission delay value for the audioinformation based on a difference between the first network time indexand the second network time index; and determine a total delay value forthe audio information based on the transmission delay value and on aremote processing delay value for the audio information, the remoteprocessing delay value indicating a duration of processing of the audioinformation by a remote device.
 8. The apparatus of claim 7, the audiosynchronization module for execution on the processor circuit todetermine a coordinated time index for the audio information based onthe total delay value and on a local clock, the coordinated time indexindicating a time defined with respect to the local clock.
 9. Theapparatus of claim 7, the network clock comprising a Bluetooth networkclock for a Bluetooth network.
 10. The apparatus of claim 7, the firstnetwork time index indicating a relative offset of a network clockvalue, the relative offset comprising a number of periods of a symbolclock for the network.
 11. The apparatus of claim 7, the audiosynchronization module for execution on the processor circuit tosynchronize playback of the audio information by multiple devicesaccording to an inter-device temporal frame of reference defined basedon the network clock.
 12. The apparatus of claim 8, the audiosynchronization module for execution on the processor circuit to:receive second audio information; determine a coordinated time index forthe second audio information; and combine the audio information with thesecond audio information based on the coordinated time index for theaudio information and the coordinated time index for the second audioinformation.
 13. A method, comprising: receiving audio informationcomprising a first network time index defined with respect to a networkclock for a network; determining a second network time index for theaudio information, the second network time index defined with respect tothe network clock; determining a transmission delay value for the audioinformation based on a difference between the first network time indexand the second network time index; and determining a total delay valuefor the audio information based on the transmission delay value and on aremote processing delay value for the audio information, the remoteprocessing delay value indicating a duration of processing of the audioinformation by a remote device.
 14. The method of claim 13, comprisingdetermining a coordinated time index for the audio information based onthe total delay value and on a local clock, the coordinated time indexindicating a time defined with respect to the local clock.
 15. Themethod of claim 13, the network clock comprising a Bluetooth networkclock for a Bluetooth network.
 16. The method of claim 13, the firstnetwork time index indicating a relative offset of a network clockvalue, the relative offset comprising a number of periods of a symbolclock for the network.
 17. The method of claim 13, comprisingsynchronizing playback of the audio information by multiple devicesaccording to an inter-device temporal frame of reference defined basedon the network clock.
 18. The method of claim 14, comprising: receivingsecond audio information; determining a coordinated time index for thesecond audio information; and combining the audio information with thesecond audio information based on the coordinated time index for theaudio information and the coordinated time index for the second audioinformation.
 19. At least one machine-readable medium comprising aplurality of instructions that, in response to being executed on acomputing device, cause the computing device to: generate audioinformation; determine network time indices for the audio informationbased on a network clock for a network; and generate indexed audioinformation based on the network time indices and the audio information.20. The at least one machine-readable medium of claim 19, the networkcomprising a Bluetooth network, the network clock comprising a Bluetoothnetwork clock of the Bluetooth network.
 21. The at least onemachine-readable medium of claim 19, the network time indices comprisingrelative offsets of network clock values, the relative offsetscomprising numbers of periods of a symbol clock for the network.
 22. Theat least one machine-readable medium of claim 19, comprisinginstructions that, in response to being executed on the computingdevice, cause the computing device to transmit the indexed audioinformation to a second computing device over a second network.
 23. Anapparatus, comprising: a processor circuit; and an audio indexing modulefor execution on the processor circuit to: generate audio information;determine network time indices for the audio information based on anetwork clock for a network; and generate indexed audio informationbased on the network time indices and the audio information.
 24. Theapparatus of claim 23, the network comprising a Bluetooth network, thenetwork clock comprising a Bluetooth network clock of the Bluetoothnetwork.
 25. The apparatus of claim 23, the network time indicescomprising relative offsets of network clock values, the relativeoffsets comprising numbers of periods of a symbol clock for the network.26. The apparatus of claim 23, the audio indexing module to transmit theindexed audio information to a computing device over a second network.27. A system, comprising: a processor circuit; a microphone coupled tothe processor circuit; and a memory unit coupled to the processorcircuit to store an audio indexing module for execution on the processorcircuit to: capture audio information using the microphone; determinetime indices for the audio information based on a network clock for anetwork; and generate indexed audio information based on the timeindices and the audio information.
 28. The system of claim 27, thenetwork comprising a Bluetooth network, the network clock comprising aBluetooth network clock of the Bluetooth network.
 29. The system ofclaim 27, the network time indices comprising relative offsets ofnetwork clock values, the relative offsets comprising numbers of periodsof a symbol clock for the network.
 30. The system of claim 27, the audioindexing module to transmit the indexed audio information to a computingdevice over a second network.